package com.cnblogs.leizia.crm.workbench.dao;

import com.cnblogs.leizia.crm.workbench.domain.Activity;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Map;

/**
 * @author leizi
 * @create 2021-02-16 12:40
 */
public interface ActivityDao {
    /**
     * 添加市场活动信息
     *
     * @param activity
     * @return
     */
    int activitySave(Activity activity);

    /**
     * 分页获取市场活动列表
     *
     * @param activityPageMap
     * @return
     */
    List<Activity> activityPageList(Map<String, Object> activityPageMap);

    /**
     * 根据条件查询总记录数
     *
     * @param activityPageMap
     * @return
     */
    int activityTotal(Map<String, Object> activityPageMap);

    /**
     * 根据ids删除市场活动记录
     * (市场活动表与市场活动备注表关联删除记录)
     *
     * @param ids
     * @return
     */
    int activityDelete(String[] ids);

    /**
     * 根据id获取市场活动记录信息
     *
     * @param id
     * @return
     */
    Activity editActivity(@Param("id") String id);

    /**
     * 根据id更新记录信息
     *
     * @param activity
     * @return
     */
    int updateActivity(Activity activity);

    /**
     * 根据id获取市场活动详情
     *
     * @param id
     * @return
     */
    Activity getDetail(@Param("id") String id);

    /**
     * 市场活动分页查询列表
     *
     * @param name
     * @param activities
     * @return
     */
    List<Activity> getClueActivityList(@Param("name") String name,@Param("activities") List<Activity> activities);
}
